home *** CD-ROM | disk | FTP | other *** search
/ BBS in a Box 7 / BBS in a Box - Macintosh - Volume VII (BBS in a Box) (January 1993).iso / Files / Hyper / Me-Mz / MH Checking & Savings v2.4d.cpt / Checking & Savings Demo2.4 / card_19708.txt < prev    next >
Text File  |  1988-02-27  |  24KB  |  768 lines

  1. -- card: 19708 from stack: in.4
  2. -- bmap block id: 27537
  3. -- flags: 4000
  4. -- background id: 6571
  5. -- name: Rpt.
  6. ----- HyperTalk script -----
  7. on closeCard
  8.   set lockscreen to true
  9.   show card field "Rpt."
  10.   hide background field "Rpt."
  11. end closeCard
  12.  
  13. on openCard
  14.   set cursor to 4
  15.   show background field "Rpt."
  16.   hide card field "Rpt."
  17. end openCard
  18.  
  19.  
  20. -- part 2 (field)
  21. -- low flags: 01
  22. -- high flags: 0002
  23. -- rect: left=2 top=19 right=33 bottom=511
  24. -- title width / last selected line: 0
  25. -- icon id / first selected line: 0 / 0
  26. -- text alignment: 0
  27. -- font id: 4
  28. -- text size: 9
  29. -- style flags: 0
  30. -- line height: 11
  31. -- part name: Rpt. Title
  32.  
  33.  
  34. -- part 4 (button)
  35. -- low flags: 00
  36. -- high flags: 2000
  37. -- rect: left=413 top=308 right=334 bottom=438
  38. -- title width / last selected line: 0
  39. -- icon id / first selected line: 9301 / 9301
  40. -- text alignment: 1
  41. -- font id: 0
  42. -- text size: 12
  43. -- style flags: 0
  44. -- line height: 16
  45. -- part name: Preview
  46. ----- HyperTalk script -----
  47. on mouseUp
  48.   visual effect scroll right
  49.   go to previous card of this background
  50. end mouseUp
  51.  
  52.  
  53. -- part 5 (button)
  54. -- low flags: 00
  55. -- high flags: 2000
  56. -- rect: left=441 top=308 right=334 bottom=466
  57. -- title width / last selected line: 0
  58. -- icon id / first selected line: 27009 / 27009
  59. -- text alignment: 1
  60. -- font id: 0
  61. -- text size: 12
  62. -- style flags: 0
  63. -- line height: 16
  64. -- part name: Next
  65. ----- HyperTalk script -----
  66. on mouseUp
  67.   visual effect scroll left
  68.   go to next card of this background
  69. end mouseUp
  70.  
  71.  
  72.  
  73. -- part 6 (button)
  74. -- low flags: 00
  75. -- high flags: 2000
  76. -- rect: left=468 top=306 right=342 bottom=512
  77. -- title width / last selected line: 0
  78. -- icon id / first selected line: 9761 / 9761
  79. -- text alignment: 1
  80. -- font id: 0
  81. -- text size: 12
  82. -- style flags: 0
  83. -- line height: 16
  84. -- part name: Map
  85. ----- HyperTalk script -----
  86. on mouseUp
  87.   go to card "Map"
  88. end mouseUp
  89.  
  90.  
  91.  
  92. -- part 7 (button)
  93. -- low flags: 00
  94. -- high flags: A004
  95. -- rect: left=347 top=289 right=338 bottom=405
  96. -- title width / last selected line: 0
  97. -- icon id / first selected line: 30071 / 30071
  98. -- text alignment: 1
  99. -- font id: 0
  100. -- text size: 12
  101. -- style flags: 0
  102. -- line height: 16
  103. -- part name: Analysis
  104. ----- HyperTalk script -----
  105. on copyright
  106.   -- THESE SCRIPTS ARE COPYRIGHTED BY MAC HELP COMPANY
  107.   -- CONTACT AUTHOR FOR PERMISSION TO USE THESE SCRIPTS
  108. end copyright
  109.  
  110. on mouseUp
  111.   set numberformat to 0.00
  112.  
  113.   if the optionKey is down then
  114.     put "You can analyize your sub accounts and your Income Database" && "entries.  It takes a while, but the information is very useful." && "The table shows your daily transactions, as well as summaries" && "for each sub account for the month, quarter and year.  Also" && "a summary of all the accounts (by month) is generated at the" && "end." into String
  115.     put the name of the target into ThisItem
  116.     HelpMsg1 String, ThisItem
  117.     exit mouseUp
  118.   end if
  119.  
  120.   answer "Generate an updated report of your sub Account activity?" & "                                            " & "¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†¬†" & "(This will definitely take quite a bit of time.)" with "Cancel" or "Yes"
  121.   if it is "Cancel" then exit mouseUp
  122.  
  123.   put 1 into AnalyizeFrom
  124.   put 2 into AnalyizeTo
  125.   answer "Do you wish to make an analysis of the 'Account Activity' "& "or of the 'DataBase' activity?" with "Account" or "DataBase" or "Both"
  126.   if it is "Account" then put 1 into AnalyizeTo
  127.   if it is "DataBase" then put 2 into AnalyizeFrom
  128.  
  129.   answer "Sort Cards before making a report?" with "Yes" or "No"
  130.   if it is "Yes" then
  131.     set lockscreen to true
  132.     sort by background field "Sub Title"
  133.   end if
  134.  
  135.   answer "Do the transactions on the sub account cards need to be " & "re-sorted so that they will appear in order by date?" with "Yes" or "No"
  136.   if it is "Yes" then
  137.     put true into sortItems
  138.   else
  139.     put false into sortItems
  140.   end if
  141.  
  142.   go to card "Rpt."
  143.   set lockscreen to false
  144.   put "Updating..." into card field "Wait Pop"
  145.   show card field "Wait Pop"
  146.   set lockscreen to true
  147.   set cursor to 4
  148.   hide card field "Wait Pop"
  149.  
  150.   put empty into background field "Rpt." of card "Rpt."
  151.   put 0 into lineNum
  152.   repeat with AcctAnalysis = AnalyizeFrom to AnalyizeTo
  153.     if AcctAnalysis is 1 then
  154.       put "Sub Amount" into AnalysisField
  155.     else
  156.       put "Sub Amount2" into AnalysisField
  157.     end if
  158.  
  159.     go to card 1 of background "Sub Accounts"
  160.     put the ID of this card into ReturnID
  161.  
  162.  
  163.     put empty into card field MonthSums of card "Rpt."
  164.     repeat with i = 1 to 12
  165.       put "0      0" into line i of card field "MonthSums" of card "Rpt."
  166.     end repeat
  167.  
  168.     put 0 into AllMonth
  169.     put 0 into AllQuarter
  170.     put 0 into AllYear
  171.  
  172.  
  173.     repeat forever -- go through every sub card
  174.  
  175.       put 0 into Daily
  176.       put 0 into Weekly
  177.       put 0 into Monthly
  178.       put 0 into Quarterly
  179.       put 0 into Yearly
  180.       put 0 into RunningTotal
  181.  
  182.       put 0 into LastDate
  183.       put 0 into LastQuarter
  184.       put 0 into LastAmount
  185.       put runningTotal into LastTotal
  186.  
  187.       put background field "Sub Title" into SubName
  188.       if AcctAnalysis is 1 then
  189.         put SubName & " ( $" & background field "Sub Total" & " )" into SubName
  190.       else
  191.         put SubName & " ( $" & background field "Sub Total2" & " )" into SubName
  192.       end if
  193.       put 0 into i
  194.  
  195.       put SubName into line LineNum of background field "Rpt." of card "Rpt."
  196.       add 1 to LineNum
  197.  
  198.       repeat forever  -- go through every trans for this sub
  199.         add 1 to i
  200.         get line i of background field AnalysisField
  201.  
  202.         put word 1 of it into ThisDate
  203.         put ThisDate into realDate
  204.         convert ThisDate to DateItems
  205.         put word 3 of it into Amount
  206.         put word 4 of it into SubTrans
  207.  
  208.  
  209.         -- each line
  210.         add 1 to LineNum
  211.         put "                                                                   " into line LineNum of background field "Rpt." of card "Rpt."
  212.         put RealDate into char (10-length(RealDate)) of line LineNum of background field "Rpt." of card "Rpt."
  213.         put SubTrans into char 12 of line LineNum of background field "Rpt." of card "Rpt."
  214.         put Amount into char (27-length(Amount)) of line LineNum of background field "Rpt." of card "Rpt."
  215.  
  216.         -- running Total
  217.         add amount to RunningTotal
  218.  
  219.  
  220.         -- do daily
  221.         if ThisDate is LastDate then
  222.           add LastAmount to daily
  223.         else
  224.           -- put the daily before clearing
  225.           if the value of Daily is not 0 then
  226.             add LastAmount to daily
  227.             subtract 1 from LineNum
  228.             put Daily into char (40-length(Daily)) of line LineNum of background field "Rpt." of card "Rpt."
  229.             add 1 to LineNum
  230.           end if
  231.           put 0 into daily
  232.         end if
  233.  
  234.  
  235.         -- do weekly
  236.  
  237.  
  238.         -- do monthly
  239.         put item 2 of ThisDate into Temp1
  240.         put item 2 of LastDate into Temp2
  241.  
  242.         if Temp1 > 0 and Amount is not empty then
  243.           if Amount > 0 then -- this is income
  244.             add Amount to word 1 of line Temp1 of card field MonthSums of card "Rpt."
  245.           else
  246.             add Amount to word 2 of line Temp1 of card field MonthSums of card "Rpt."
  247.           end if
  248.         end if
  249.  
  250.         if (Temp1 is not Temp2) and LastDate is not 0 then
  251.           -- put the monthly before clearing
  252.           if the value of monthly is not 0 then
  253.             Subtract 1 from LineNum
  254.             put Monthly into char (53-length(Monthly)) of line LineNum of background field "Rpt." of card "Rpt."
  255.             add 1 to LineNum
  256.             add Monthly to AllMonth
  257.           end if
  258.           put 0 into Monthly
  259.         end if
  260.  
  261.  
  262.         -- do quarterly
  263.         put 4 into Quarter
  264.         if item 2 of ThisDate < 10 then put 3 into Quarter
  265.         if item 2 of ThisDate < 7 then put 2 into Quarter
  266.         if item 2 of ThisDate < 4 then put 1 into Quarter
  267.  
  268.         if (Quarter is not LastQuarter) and LastQuarter is not 0 then
  269.           -- put the quarterly before clearing
  270.           if the value of Quarterly is not 0 then
  271.             subtract 1 from LineNum
  272.             put Quarterly into char (65-length(Quarterly)) of line LineNum of background field "Rpt." of card "Rpt."
  273.             add 1 to LineNum
  274.             add Quarterly to AllQuarter
  275.           end if
  276.           put 0 into quarterly
  277.         end if
  278.  
  279.  
  280.         -- do yearly
  281.         put item 1 of ThisDate into Temp1
  282.         put item 1 of LastDate into Temp2
  283.         if (Temp1 is not Temp2) and LastDate is not 0 then
  284.           -- put the yearly before clearing
  285.           if the value of Yearly is not 0 then
  286.             subtract 1 from LineNum
  287.             put Yearly into char (80-length(Yearly)) of line LineNum of background field "Rpt." of card "Rpt."
  288.             add 1 to LineNum
  289.             add Yearly to AllYear
  290.           end if
  291.           put 0 into yearly
  292.         end if
  293.  
  294.  
  295.         put ThisDate into LastDate
  296.         put Quarter into LastQuarter
  297.         put Amount into LastAmount
  298.         add Amount to Monthly
  299.         add Amount to quarterly
  300.         add Amount to yearly
  301.         --ask "Last total for " && SubName && realDate with runningTotal --**
  302.  
  303.         get line i of background field AnalysisField
  304.         if it is empty then exit repeat
  305.       end repeat
  306.  
  307.       go to next card of this background
  308.       if the ID of this Card is ReturnID then exit repeat
  309.  
  310.       if sortItems then    -- sort each line of sub acct trans. by date
  311.         put the number of lines of background field AnalysisField into TotLines
  312.         put 0 into h
  313.         repeat forever
  314.           add 1 to h
  315.           if h > TotLines or h = TotLines then exit repeat
  316.           put word 1 of line h of background field AnalysisField into temp1
  317.           put line h of background field AnalysisField into BeforeLine
  318.           put word 1 of line h+1 of background field AnalysisField into temp2
  319.           put line h+1 of background field AnalysisField into AfterLine
  320.           convert temp1 to seconds
  321.           convert temp2 to seconds
  322.           if AfterLine is empty then
  323.             delete line h+1 of background field AnalysisField
  324.           else
  325.             if temp1 > Temp2 then
  326.               put BeforeLine into line h+1 of background field AnalysisField
  327.               put AfterLine into line h of background field AnalysisField
  328.               put 0 into h
  329.             end if
  330.           end if
  331.         end repeat
  332.       end if
  333.  
  334.  
  335.  
  336.       add 1 to LineNum
  337.       put " " into line LineNum of background field "Rpt." of card "Rpt."
  338.       add 1 to LineNum
  339.       put " " into line LineNum of background field "Rpt." of card "Rpt."
  340.       add 1 to LineNum
  341.       put " " into line LineNum of background field "Rpt." of card "Rpt."
  342.  
  343.       --exit repeat -- for one card only
  344.     end repeat
  345.  
  346.     add 1 to LineNum
  347.     put " " into line LineNum of background field "Rpt." of card "Rpt."
  348.     add 1 to lineNum
  349.     put "                                                                   " into line LineNum of background field "Rpt." of card "Rpt."
  350.     put "----------" into char 70 of line LineNum of background field "Rpt." of card "Rpt."
  351.     add 1 to lineNum
  352.     put "                                                                   " into line LineNum of background field "Rpt." of card "Rpt."
  353.     put AllYear into char (80-length(AllYear)) of line LineNum of background field "Rpt." of card "Rpt."
  354.  
  355.  
  356.     -- put totals for each month
  357.     add 1 to LineNum
  358.     put " " into line LineNum of background field "Rpt." of card "Rpt."
  359.     add 1 to LineNum
  360.     put " " into line LineNum of background field "Rpt." of card "Rpt."
  361.     add 1 to LineNum
  362.     put " " into line LineNum of background field "Rpt." of card "Rpt."
  363.  
  364.     add 1 to LineNum
  365.     put "                                                                   " into line LineNum of background field "Rpt." of card "Rpt."
  366.     put "MONTH" into char (15-length("Month")) of line LineNum of background field "Rpt." of card "Rpt."
  367.     put "INCOME" into char (30-length("Income")) of line LineNum of background field "Rpt." of card "Rpt."
  368.     put "EXPENSE" into char (50-length("Expense")) of line LineNum of background field "Rpt." of card "Rpt."
  369.     put "BALANCE" into char (70-length("Balance")) of line LineNum of background field "Rpt." of card "Rpt."
  370.     add 1 to LineNum
  371.     put "  ------------------------------------------------------------------------" into line LineNum of background field "Rpt." of card "Rpt."
  372.  
  373.     repeat with j = 1 to 12
  374.       get line j of card field "MonthSums" of card "Rpt."
  375.       put the value of word 1 of it into Inc
  376.       put the value of word 2 of it into Exp
  377.       put Inc + Exp into Bal
  378.       if j is 1 then put "January" into MName
  379.       if j is 2 then put "February" into MName
  380.       if j is 3 then put "March" into MName
  381.       if j is 4 then put "April" into MName
  382.       if j is 5 then put "May" into MName
  383.       if j is 6 then put "June" into MName
  384.       if j is 7 then put "July" into MName
  385.       if j is 8 then put "August" into MName
  386.       if j is 9 then put "September" into MName
  387.       if j is 10 then put "October" into MName
  388.       if j is 11 then put "November" into MName
  389.       if j is 12 then put "December" into MName
  390.       add 1 to LineNum
  391.       put "                                                                   " into line LineNum of background field "Rpt." of card "Rpt."
  392.       put MName into char (15-length(MName)) of line LineNum of background field "Rpt." of card "Rpt."
  393.       put Inc into char (30-length(Inc)) of line LineNum of background field "Rpt." of card "Rpt."
  394.       put Exp into char (50-length(Exp)) of line LineNum of background field "Rpt." of card "Rpt."
  395.       put bal into char (70-length(bal)) of line LineNum of background field "Rpt." of card "Rpt."
  396.     end repeat
  397.  
  398.     add 1 to LineNum
  399.     put " " into line LineNum of background field "Rpt." of card "Rpt."
  400.     add 1 to LineNum
  401.     put " " into line LineNum of background field "Rpt." of card "Rpt."
  402.     add 1 to LineNum
  403.     put " " into line LineNum of background field "Rpt." of card "Rpt."
  404.  
  405.     go to card "Rpt."
  406.   end repeat
  407.  
  408.   set lockscreen to false
  409.   play boing a
  410.   play boing a
  411. end mouseUp
  412.  
  413.  
  414.  
  415. -- part 9 (field)
  416. -- low flags: 81
  417. -- high flags: 2004
  418. -- rect: left=41 top=189 right=264 bottom=460
  419. -- title width / last selected line: 0
  420. -- icon id / first selected line: 0 / 0
  421. -- text alignment: 1
  422. -- font id: 204
  423. -- text size: 48
  424. -- style flags: 6912
  425. -- line height: 64
  426. -- part name: Wait Pop
  427.  
  428.  
  429. -- part 12 (field)
  430. -- low flags: 80
  431. -- high flags: 0007
  432. -- rect: left=2 top=39 right=294 bottom=511
  433. -- title width / last selected line: 0
  434. -- icon id / first selected line: 0 / 0
  435. -- text alignment: 0
  436. -- font id: 4
  437. -- text size: 9
  438. -- style flags: 0
  439. -- line height: 11
  440. -- part name: MonthSums
  441.  
  442.  
  443. -- part 13 (button)
  444. -- low flags: 00
  445. -- high flags: A004
  446. -- rect: left=162 top=289 right=338 bottom=219
  447. -- title width / last selected line: 0
  448. -- icon id / first selected line: 1007 / 1007
  449. -- text alignment: 1
  450. -- font id: 0
  451. -- text size: 12
  452. -- style flags: 0
  453. -- line height: 16
  454. -- part name: Print
  455. ----- HyperTalk script -----
  456. on mouseUp
  457.   set lockscreen to true
  458.   doMenu "Page Setup..."
  459.   set Lockscreen to True
  460.   doMenu "Print Report..."
  461.   set lockscreen to false
  462. end mouseUp
  463.  
  464.  
  465. -- part 14 (field)
  466. -- low flags: 00
  467. -- high flags: 0007
  468. -- rect: left=2 top=33 right=287 bottom=511
  469. -- title width / last selected line: 0
  470. -- icon id / first selected line: 0 / 0
  471. -- text alignment: 0
  472. -- font id: 4
  473. -- text size: 9
  474. -- style flags: 0
  475. -- line height: 11
  476. -- part name: Rpt.
  477.  
  478.  
  479. -- part 15 (button)
  480. -- low flags: 00
  481. -- high flags: A004
  482. -- rect: left=102 top=289 right=338 bottom=158
  483. -- title width / last selected line: 0
  484. -- icon id / first selected line: 12195 / 12195
  485. -- text alignment: 1
  486. -- font id: 0
  487. -- text size: 12
  488. -- style flags: 0
  489. -- line height: 16
  490. -- part name: Text File
  491. ----- HyperTalk script -----
  492. on mouseUp
  493.  
  494.   if the optionKey is down then
  495.     put "You can write the information generated by the analysis to" && "a text file.  You could then use a different program such as" && "a word processor to import that file.  (Tabs are automatically" && "set between columns, for better formatting.)" into String
  496.     put the name of the target into ThisItem
  497.     HelpMsg1 String, ThisItem
  498.     exit mouseUp
  499.   end if
  500.  
  501.   ask "Before saving, name the file you want to save this data to?" with "(Ckg/Savings) Sub Acct Analysis"
  502.   put it into ThisFile
  503.   if ThisFile is empty then exit mouseUp
  504.  
  505.   open File ThisFile
  506.   write "For better format, set your tabs to separate each column "& "of this listing!" & Return & Return to file ThisFile
  507.  
  508.  
  509.   set cursor to 4
  510.   set lockscreen to true
  511.  
  512.   write tab & card field "Rpt. Title" to file ThisFile
  513.   put the number of lines of background field "Rpt." into TotalLines
  514.  
  515.   repeat with i = 1 to TotalLines
  516.     put the number of words of line i of background field "Rpt." into TotalWords
  517.     put empty into stuff
  518.     repeat with j = 1 to TotalWords
  519.       put stuff & tab & word j of line i of background field "Rpt." into stuff
  520.     end repeat
  521.     write stuff & Return to file ThisFile
  522.   end repeat
  523.  
  524.   Close File ThisFile
  525.  
  526. end mouseUp
  527.  
  528.  
  529.  
  530. -- part 17 (button)
  531. -- low flags: 00
  532. -- high flags: 0004
  533. -- rect: left=286 top=289 right=338 bottom=343
  534. -- title width / last selected line: 0
  535. -- icon id / first selected line: 8538 / 8538
  536. -- text alignment: 1
  537. -- font id: 0
  538. -- text size: 12
  539. -- style flags: 0
  540. -- line height: 16
  541. -- part name: SuperFind: Chris Hostetter
  542. ----- HyperTalk script -----
  543. on mouseUp
  544.   -- Super Find, by Chris Hostetter
  545.   -- Mac Help Co., 1800 East Market Street
  546.   -- Long Beach, CA  90805, (213) 428-7414
  547.   -- This script may be freely used in other stacks provided that:
  548.   --    1.  You keep it in its entirety
  549.   --          (you can use the (--) to turn any un-needed lines off)
  550.   --    2.  You notify the author (see above)
  551.  
  552.   global  LastButton, searchstring, LastField
  553.   get the selection
  554.   if it is not empty then put it into SearchString
  555.  
  556.   if the optionKey is down then
  557.     put "This advanced search button allows you to enter information" && "you wish to find.  It will take you to the card which has" && "the words (or the parts of the words) you enter (note: the" && "words don't have to be in the same order).  You can then" && "hit the carriage return to repeat the search over and over." && "If you hold the option key down while clicking OK, you can" && "be more specific about finding information in 1. the last" && "background field you clicked in (not always supported), and 2." && "whether you wish to find whole words, partial words, or the" && "characters that you entered." into String
  558.     put the name of the target into ThisItem
  559.     HelpMsg2 String, ThisItem
  560.     exit mouseUp
  561.   end if
  562.  
  563.   put the name of the target into ThisOne
  564.   set hilite of thisOne to true
  565.  
  566.   put "Chars" into FindType
  567.   put empty into SearchLimit
  568.   ask "Find Word(s)?   Hold option key for limits." with SearchString
  569.   set hilite of thisOne to false
  570.   if it is empty then
  571.     exit mouseUp
  572.   end if
  573.   put it into SearchString
  574.  
  575.   if the OptionKey is down then
  576.     if LastField is not empty then
  577.       Answer "Search for information in what field?" with "Cancel" or LastField or "Any Field"
  578.       if it is "Cancel" Then
  579.         exit mouseUp
  580.       end if
  581.       if it is LastField then
  582.         put " in background field " & NumToChar(34) & it & NumToChar(34) into SearchLimit
  583.       else
  584.         put "" into SearchLimit
  585.       end if
  586.     end if
  587.     Answer "Find " & FindType & " '" & Searchstring & "'" with "Begins With" or "Full Word" or "These Chars"
  588.     if it is "Begins with" then put empty into FindType
  589.     if it is "Full Word" then put "Word" into FindType
  590.     if it is "These Chars" then put "Chars" into FindType
  591.  
  592.   end if
  593.  
  594.  
  595.   set loc of message box to 20,-50
  596.   put "Find" && FindType && Quote & SearchString & Quote & SearchLimit into message box
  597.   hide message box
  598.   set loc of message box to 20,300
  599.   do message box
  600.   if the result is "Not Found" then
  601.     beep
  602.     answer FindType && "'" & SearchString & "'  not found.  Search more?" with "No" or "Yes"
  603.     if it is "Yes" then click at the loc of the name of the target
  604.   end if
  605. end mouseUp
  606.  
  607.  
  608. -- part 18 (button)
  609. -- low flags: 00
  610. -- high flags: A004
  611. -- rect: left=40 top=289 right=338 bottom=98
  612. -- title width / last selected line: 0
  613. -- icon id / first selected line: 15972 / 15972
  614. -- text alignment: 1
  615. -- font id: 0
  616. -- text size: 12
  617. -- style flags: 0
  618. -- line height: 16
  619. -- part name: Clear YTD
  620. ----- HyperTalk script -----
  621. on mouseUp
  622.   Global GivingDate, ShortGivingDate, ExitFlag, DatePhrase
  623.  
  624.  
  625.   if the optionKey is down then
  626.     put "Clear the year to date of the sub accounts (for the bank" && "accounts.)  (To clear for the DataBase, go to the Income Database.)" && " You can clear just the balance fields, or just the transaction" && "fields (leaving the balance still intact), or clear both." into String
  627.     put the name of the target into ThisItem
  628.     HelpMsg1 String, ThisItem
  629.     exit mouseUp
  630.   end if
  631.  
  632.   Answer "Do you wish to ERASE (ALL) of the sub-account totals?  This will set all totals to zero!" with "ERASE" or "Ooops - NO"
  633.  
  634.   if it is "Erase" then
  635.     answer "Have you printed out any needed information?  This is your last chance to print any information before it will be erased." with "ERASE" or "Cancel"
  636.     if it is "Cancel" then exit mouseUp
  637.  
  638.     answer "Clear Year To Date of 'Transactions' or 'Balances'?" with "Transactions" or "Balances" or "Both"
  639.     put it into whichtype
  640.     if whichType is "Both" then put 3 into WhichType
  641.     if whichtype is "Balances" then put 1 into WhichType
  642.     if whichtype is "Transactions" then put 2 into WhichType
  643.  
  644.     put "Would you like the new recording date to be " into DatePhrase
  645.     put False into ExitFlag
  646.     send "DoDate" to background
  647.     if ExitFlag then exit mouseUp
  648.     set the name of background button id 9 to GivingDate
  649.  
  650.     set numberformat to 0.00
  651.     go to last card of this background
  652.     put the id of this card into FlagCardID
  653.     if WhichType is 1 or WhichType is 3 then
  654.       put empty into background field "Sub Total"
  655.     end if
  656.     if WhichType is 2 or WhichType is 3 then
  657.       put empty into background field "Sub Amount"
  658.     end if
  659.     go to first card of this background
  660.  
  661.     repeat until the ID of this card is FlagCardID
  662.       set lockscreen to false
  663.       if WhichType is 1 or WhichType is 3 then
  664.         put empty into background field "Sub Total"
  665.       end if
  666.       if WhichType is 2 or WhichType is 3 then
  667.         put empty into background field "Sub Amount"
  668.       end if
  669.       go to next card of this background
  670.     end repeat
  671.   end if
  672.   go to card "Rpt."
  673.  
  674. end mouseUp
  675.  
  676.  
  677. -- part 19 (button)
  678. -- low flags: 00
  679. -- high flags: A004
  680. -- rect: left=224 top=289 right=339 bottom=281
  681. -- title width / last selected line: 0
  682. -- icon id / first selected line: 20186 / 20186
  683. -- text alignment: 1
  684. -- font id: 0
  685. -- text size: 12
  686. -- style flags: 0
  687. -- line height: 16
  688. -- part name: Sort
  689. ----- HyperTalk script -----
  690. on mouseUp
  691.   global LastField, LastLine
  692.   if LastLine is 0 then put 1 into LastLine
  693.  
  694.   answer "Sort all cards of this stack according to:" with "As Entered" or "Last Entered" or "Other"
  695.   push this card
  696.  
  697.   if it is "Last Entered" then
  698.     sort descending by line 2 of background field "Creation Date"
  699.     go to Last Card
  700.   end if
  701.   if it is "As Entered" then sort by line 2 of background field "Creation Date"
  702.   if it is "Other" then
  703.     put LastField into AskField
  704.     answer "Sort all cards of this stack according to:" with AskField or "CANCEL"
  705.  
  706.     if it is AskField then
  707.       sort by background field AskField
  708.     end if
  709.  
  710.   end if
  711.   pop card
  712. end mouseUp
  713.  
  714.  
  715.  
  716. -- part 20 (field)
  717. -- low flags: 81
  718. -- high flags: 2004
  719. -- rect: left=50 top=45 right=310 bottom=470
  720. -- title width / last selected line: 0
  721. -- icon id / first selected line: 0 / 0
  722. -- text alignment: 1
  723. -- font id: 3
  724. -- text size: 14
  725. -- style flags: 0
  726. -- line height: 18
  727. -- part name: Help Message Field
  728. ----- HyperTalk script -----
  729. on mouseUp
  730.   put the name of the target into thisField
  731.   do "put empty into" && thisField
  732.   hide thisField
  733. end mouseUp
  734.  
  735.  
  736. -- part contents for card part 2
  737. ----- text -----
  738.            Type     Amount        Daily      Monthly   Quarterly         Yearly
  739.  
  740. -- part contents for card part 9
  741. ----- text -----
  742. Updating...
  743.  
  744. -- part contents for card part 12
  745. ----- text -----
  746. 650.00      -50.00
  747. 0      0
  748. 0      0
  749. 0      0
  750. 0      0
  751. 0      0
  752. 0      0
  753. 0      0
  754. 0      0
  755. 0      0
  756. 0      0
  757. 0      0
  758.  
  759. -- part contents for background part 29
  760. ----- text -----
  761.  
  762.  
  763.  
  764.  
  765.  
  766.  
  767.  
  768.